package com.heatup.apt.model.api.course;

import com.heatup.apt.model.api.ResourceModel;
import com.heatup.apt.model.course.CourseSchedule;
import com.heatup.apt.model.store.StoreInfo;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * Created by b3st9u on 16/8/20.
 * 课程
 */
public class CourseResultModel {

    private Integer id;
    private Integer coachCount;
    private String crowd;
    private List<String> courseAttr;
    private List<String> goodCourse;
    private String introduce;
    private List<String> announcements;
    private Integer pastCount;
    private String courseType;
    private String evalLable;
    private String headImg;
    private Integer maxCount;
    private Integer minCount;
    private String title;
    private String coachComment;
    private Integer currentCount;
    private Integer waitCount;
    private String status;
    private Integer storeId;
    private String schedule;
    private Date deadline;
    private Date dateNow;
    private String bookType;//用户是否预订过该课程标识 0:未预订 1：已预订
    private String userLevel;

	public String getUserLevel() {
		return userLevel;
	}

	public void setUserLevel(String userLevel) {
		this.userLevel = userLevel;
	}

	public String getBookType() {
		return bookType;
	}

	public void setBookType(String bookType) {
		this.bookType = bookType;
	}

	private List<CourseStoreModel> stores;

    private Map<String, List<ResourceModel>> images;

    public Date getDateNow() {
        return dateNow;
    }

    public void setDateNow(Date dateNow) {
        this.dateNow = dateNow;
    }

    public Map<String, List<ResourceModel>> getImages() {
        return images;
    }

    public void setImages(Map<String, List<ResourceModel>> images) {
        this.images = images;
    }

    public List<CourseStoreModel> getStores() {
        return stores;
    }

    public void setStores(List<CourseStoreModel> stores) {
        this.stores = stores;
    }

    public String getSchedule() {
        return schedule;
    }

    public void setSchedule(String schedule) {
        this.schedule = schedule;
    }

    /**
     * 教练信息
     */
    private CourseCoachModel coachModel;

    public CourseCoachModel getCoachModel() {
        return coachModel;
    }

    public void setCoachModel(CourseCoachModel coachModel) {
        this.coachModel = coachModel;
    }

    private CoursePriceModel coursePrices;

    public CoursePriceModel getCoursePrices() {
        return coursePrices;
    }

    public void setCoursePrices(CoursePriceModel coursePrices) {
        this.coursePrices = coursePrices;
    }

    /**
     * 店面信息
     */
    private StoreInfo storeInfo;
    /**
     * 课程时间安排
     */
    private List<CourseSchedule> courseSchedules;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getCoachCount() {
        return coachCount;
    }

    public void setCoachCount(Integer coachCount) {
        this.coachCount = coachCount;
    }

    public String getCrowd() {
        return crowd;
    }

    public void setCrowd(String crowd) {
        this.crowd = crowd;
    }

    public List<String> getCourseAttr() {
        return courseAttr;
    }

    public void setCourseAttr(List<String> courseAttr) {
        this.courseAttr = courseAttr;
    }

    public String getIntroduce() {
        return introduce;
    }

    public void setIntroduce(String introduce) {
        this.introduce = introduce;
    }

    public List<String> getAnnouncements() {
        return announcements;
    }

    public void setAnnouncements(List<String> announcements) {
        this.announcements = announcements;
    }

    public Integer getPastCount() {
        return pastCount;
    }

    public void setPastCount(Integer pastCount) {
        this.pastCount = pastCount;
    }

    public String getCourseType() {
        return courseType;
    }

    public void setCourseType(String courseType) {
        this.courseType = courseType;
    }

    public String getEvalLable() {
        return evalLable;
    }

    public void setEvalLable(String evalLable) {
        this.evalLable = evalLable;
    }

    public String getHeadImg() {
        return headImg;
    }

    public void setHeadImg(String headImg) {
        this.headImg = headImg;
    }

    public Integer getMaxCount() {
        return maxCount;
    }

    public void setMaxCount(Integer maxCount) {
        this.maxCount = maxCount;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getCoachComment() {
        return coachComment;
    }

    public void setCoachComment(String coachComment) {
        this.coachComment = coachComment;
    }

    public Integer getCurrentCount() {
        return currentCount;
    }

    public void setCurrentCount(Integer currentCount) {
        this.currentCount = currentCount;
    }

    public Integer getWaitCount() {
        return waitCount;
    }

    public void setWaitCount(Integer waitCount) {
        this.waitCount = waitCount;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Integer getStoreId() {
        return storeId;
    }

    public void setStoreId(Integer storeId) {
        this.storeId = storeId;
    }


    public StoreInfo getStoreInfo() {
        return storeInfo;
    }

    public void setStoreInfo(StoreInfo storeInfo) {
        this.storeInfo = storeInfo;
    }

    public List<CourseSchedule> getCourseSchedules() {
        return courseSchedules;
    }

    public void setCourseSchedules(List<CourseSchedule> courseSchedules) {
        this.courseSchedules = courseSchedules;
    }

    public Integer getMinCount() {
        return minCount;
    }

    public void setMinCount(Integer minCount) {
        this.minCount = minCount;
    }

    public Date getDeadline() {
        return deadline;
    }

    public void setDeadline(Date deadline) {
        this.deadline = deadline;
    }

    public List<String> getGoodCourse() {
        return goodCourse;
    }

    public void setGoodCourse(List<String> goodCourse) {
        this.goodCourse = goodCourse;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder("CourseResultModel{");
        sb.append("id=").append(id);
        sb.append(", coachCount=").append(coachCount);
        sb.append(", crowd='").append(crowd).append('\'');
        sb.append(", courseAttr=").append(courseAttr);
        sb.append(", goodCourse=").append(goodCourse);
        sb.append(", introduce='").append(introduce).append('\'');
        sb.append(", announcements=").append(announcements);
        sb.append(", pastCount=").append(pastCount);
        sb.append(", courseType='").append(courseType).append('\'');
        sb.append(", evalLable='").append(evalLable).append('\'');
        sb.append(", headImg='").append(headImg).append('\'');
        sb.append(", maxCount=").append(maxCount);
        sb.append(", minCount=").append(minCount);
        sb.append(", title='").append(title).append('\'');
        sb.append(", coachComment='").append(coachComment).append('\'');
        sb.append(", currentCount=").append(currentCount);
        sb.append(", waitCount=").append(waitCount);
        sb.append(", status='").append(status).append('\'');
        sb.append(", storeId=").append(storeId);
        sb.append(", schedule='").append(schedule).append('\'');
        sb.append(", deadline=").append(deadline);
        sb.append(", dateNow=").append(dateNow);
        sb.append(", bookType='").append(bookType).append('\'');
        sb.append(", userLevel='").append(userLevel).append('\'');
        sb.append(", stores=").append(stores);
        sb.append(", images=").append(images);
        sb.append(", coachModel=").append(coachModel);
        sb.append(", coursePrices=").append(coursePrices);
        sb.append(", storeInfo=").append(storeInfo);
        sb.append(", courseSchedules=").append(courseSchedules);
        sb.append('}');
        return sb.toString();
    }
}
